<?php

use Doctrine\ORM\Tools\Setup;
use Doctrine\ORM\EntityManager;

class EntityManagerFactory {

	private static $singleton;

	public static function getInstance() {

		// Wenn der entityManager noch nicht gesetzt wurde, dann muss dieser erzeugt und konfiguriert werden
		if (!isset(self::$singleton)) {
			$paths = array("classes/model/");
			$isDevMode = DEBUG_ENABLED;
				
			$connectionOptions = array(
   				'driver'   => 'pdo_mysql',
   				'dbname'   => DB_DATABASE,
   				'host'     => DB_HOST,
   				'user'     => DB_USERNAME,
   				'password' => DB_PASSWORD
			);

			$config = Setup::createAnnotationMetadataConfiguration($paths, $isDevMode);
			self::$singleton = EntityManager::create($connectionOptions, $config);
		}

		return self::$singleton;
	}

}
?>